#define _CRT_SECURE_NO_WARNINGS

#include <stdio.h>

//int main()
//{
//	FILE* pFile;
//	pFile = fopen("example.txt", "wb");
//	fputs("This is an apple.", pFile);
//	fseek(pFile, 9, SEEK_SET);
//	fputs(" sam", pFile);
//	fclose(pFile);
//	return 0;
//}


//#define N 4
//
//#define Y(n) ((N+2)*n)
//
//int z = 2 * (N + Y(5 + 1));
//int main()
//{
//	printf("%d", z);
//	return 0;
//}

//11001001
//
//#include <stdio.h>
//#define GENERIC_MIN(type) \
//type type##_min(type x, type y)\
//{ \
// return (x<y?x:y); \
//}
//GENERIC_MIN(int)
//GENERIC_MIN(float)
//int main()
//{
//	int m = int_min(6, 3);
//	printf("%d\n", m);
//	float b = float_min(1.5f, 4.5f);
//	printf("%f\n", b);
//	return 0;
//}

//#include <stdio.h>
//#define __DEBUG__
//int main()
//{
//	int i = 0;
//	int arr[10] = { 0 };
//	for (i = 0; i < 10; i++)
//	{
//		arr[i] = i;
//#ifdef __DEBUG__
//		printf("%d\n", arr[i]);
//#endif
//	}
//	return 0;
//}

//#define OFFSETOF(s,m) ((size_t)&(((s*)0)->m)) 
//struct U
//{
//	char c;
//	int count;
//};
//int main()
//{
//	printf("%d", OFFSETOF(struct U,count));
//	return 0;
//}

#define FUNC(n) (n = ((n & 0xaaaaaaaa)>>1)+((n & 0x55555555) << 1))
int main()
{
	int a = 10;//00001010
	printf("%d",FUNC(a));
	return 0;
}